/*! v=1.1.2 */ !function(){"use strict";function e(e,t,i,n){return new(i||(i=Promise))((function(o,s){function r(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(r,a)}c((n=n.apply(e,t||[])).next())}))}function t(){return!!navigator.vendor&&navigator.vendor.indexOf("Apple")>-1&&!!navigator.userAgent&&-1===navigator.userAgent.indexOf("CriOS")&&-1===navigator.userAgent.indexOf("FxiOS")}function i(){return function(){const e=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(e)}()||function(){const e=navigator.userAgent||navigator.vendor||window.opera;return/(ipad|tablet|(android(?!.*mobile))|(windows(?!.*phone)(.*touch))|kindle|playbook|silk|(puffin(?!.*(IP|AP|WP))))/i.test(e)}()}function n(){const e=window.chrome,t=window.navigator.userAgent.indexOf("OPR")>-1||window.navigator.userAgent.indexOf("Opera")>-1;return null!==e&&!0===t}function o(){return/Edg/.test(navigator.userAgent)}function s(){return i()&&(/Firefox/.test(navigator.userAgent)||n()||o())}function r(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1}function a(e){const t=(e+"=".repeat((4-e.length%4)%4)).replace(/-/g,"+").replace(/_/g,"/"),i=atob(t),n=new Uint8Array(i.length);for(let e=0;e{c&&console.log(...e)},error:(...e)=>{c&&console.error(...e)}};function l(e,t){return new URL(t,e).toString()}const u="https://ingest.pushmaster-cdn.xyz/",p="https://in.pushmaster-in.xyz/",h={subscriptions:l(u,"subscriptions"),legacySubscriptions:l(p,"subscriptions"),promptEvents:l(u,"prompt")};function g(){if(window.pushmaster.uuid)return window.pushmaster.uuid;let e=localStorage.getItem("push_uuid");return e||(e="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})),localStorage.setItem("push_uuid",e)),window.pushmaster.uuid=e,e}function m(t,i){return e(this,void 0,void 0,(function*(){var n;if(yield function(){return e(this,void 0,void 0,(function*(){const e=window.pushmaster.lastEventTrigered;if(e){const t=300,i=Date.now()-e;if(isetTimeout(t,e)))}}window.pushmaster.lastEventTrigered=Date.now()}))}(),!function(){var e;let t=null!==(e=window.pushmaster.promptTrack)&&void 0!==e?e:null,i=!1;if(null===t){if(t="true"===localStorage.getItem("push_promptTrack"),null===t){const e=window.pushmaster.promptTrackSplit;i=!0,t=Math.random()i=>e(void 0,void 0,void 0,(function*(){yield m(t,i)})),f={onDenied:v("onDenied"),onCanceled:v("onCanceled"),onGranted:v("onGranted"),onAlreadySubscribed:v("onAlreadySubscribed"),onAlreadyDenied:v("onAlreadyDenied"),onUnsupported:v("onUnsupported"),onResubscribed:v("onResubscribed"),onError:v("onError")};class w{constructor(){this.db=null,this.dbName="pushmaster",this.storeName="consent",this.version=1}initialize(){return e(this,void 0,void 0,(function*(){return new Promise(((e,t)=>{const i=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;if(!i)return void t(new Error("IndexedDB is not supported"));const n=i.open(this.dbName,this.version);n.onerror=()=>t(n.error),n.onupgradeneeded=e=>{e.target.result.createObjectStore(this.storeName)},n.onsuccess=t=>{this.db=t.target.result,e()}}))}))}upsertConsentData(t){return e(this,void 0,void 0,(function*(){if(!this.db)throw new Error("Database not initialized");return new Promise(((e,i)=>{const n=this.db.transaction(this.storeName,"readwrite"),o=n.objectStore(this.storeName).put(t,"consent");o.onerror=()=>i(o.error),n.oncomplete=()=>e()}))}))}}class y{constructor(e,t={}){this.hasSucceeded=!1,this.consentData=null,this.activeStrategies=new Set,this.strategyResults=new Map,this.consentDB=e,this.maxRetries=t.maxRetries||15,this.initialDelay=t.initialDelay||50,this.maxDelay=t.maxDelay||1e3,this.backoffMultiplier=t.backoffMultiplier||2,this.cmpLoadingMaxAttempts=30,this.storeConsent=this.storeConsent.bind(this),this.onStrategySuccess=this.onStrategySuccess.bind(this),d.log("CMP Handshake Manager initialized")}onStrategySuccess(e,t,i){var n;const o=t.eventStatus,s=null===(n=this.consentData)||void 0===n?void 0:n.eventStatus,r={useractioncomplete:4,tcloaded:3,"gdpr-not-applicable":2,"no-cmp":2,loaded:1,timeout:0,error:0,undefined:0},a=r[o]||0,c=r[s||"undefined"]||0;return(!this.hasSucceeded||a>c)&&(this.hasSucceeded?d.log(`Consent state upgraded: ${s} → ${o}`):d.log(`First consent success: ${e} (${o})`),this.hasSucceeded=!0,this.storeConsent(t,e,i),a>=4&&this.stopAllStrategies(),!0)}storeConsent(t,i,n){return e(this,void 0,void 0,(function*(){const e=!!this.consentData;d.log(`Consent ${e?"updated":"stored"}: ${i} (${t.eventStatus})`),this.consentData=Object.assign(Object.assign({},t),{winningStrategy:i,winningAttempt:n,totalStrategiesRunning:this.activeStrategies.size,isOverwrite:e,timestamp:(new Date).toISOString()});try{const e={gdprApplies:t.gdprApplies,tcString:t.gdprConsent,timestamp:Date.now()};yield this.consentDB.upsertConsentData(e),d.log("Consent data saved to database")}catch(e){d.error("Failed to save consent data to database:",e)}}))}stopAllStrategies(){this.activeStrategies.clear()}isTcfApiAvailable(){return!!window.__tcfapi&&"function"==typeof window.__tcfapi}strategyGetTCData(){return e(this,void 0,void 0,(function*(){var e;const t="getTCData";this.activeStrategies.add(t);for(let i=1;i<=this.maxRetries;i++){if(this.hasSucceeded&&"useractioncomplete"===(null===(e=this.consentData)||void 0===e?void 0:e.eventStatus)){d.log(`${t}: Early termination - useractioncomplete already achieved`);break}const n=yield new Promise((e=>{window.__tcfapi("getTCData",2,((i,n)=>{if(n&&i){const n={gdpr:!1!==i.gdprApplies,gdprConsent:i.tcString||"",gdprApplies:i.gdprApplies,eventStatus:i.eventStatus,cmpStatus:i.cmpStatus,success:!0,method:t,timestamp:(new Date).toISOString(),reason:!1===i.gdprApplies?"GDPR does not apply":"GDPR consent retrieved"};e(n)}else e(null)}))}));if(n&&(this.onStrategySuccess(t,n,i),"useractioncomplete"===n.eventStatus))break;if(i{window.__tcfapi("addEventListener",2,((i,n)=>{if(t&&this.activeStrategies.has(e)&&n&&i){if(["cmpuishown","cmpuierror","stub"].includes(i.eventStatus))return;if(!1===i.gdprApplies){const n={gdpr:!1,gdprConsent:"",gdprApplies:!1,eventStatus:i.eventStatus||"gdpr-not-applicable",success:!0,method:e,timestamp:(new Date).toISOString(),reason:"GDPR does not apply to this user's region"};return this.onStrategySuccess(e,n,1),void(t=!1)}if(["tcloaded","useractioncomplete"].includes(i.eventStatus)){const n={gdpr:!0,gdprConsent:i.tcString||"",gdprApplies:i.gdprApplies,eventStatus:i.eventStatus,success:!0,method:e,timestamp:(new Date).toISOString(),reason:`GDPR consent obtained via event listener (${i.eventStatus})`};this.onStrategySuccess(e,n,1),"useractioncomplete"===i.eventStatus&&(t=!1)}}}))})();t&&this.activeStrategies.has(e);)yield this.sleep(1e3);this.activeStrategies.delete(e)}))}calculateDelay(e){return Math.min(this.initialDelay*Math.pow(this.backoffMultiplier,e),this.maxDelay)}sleep(e){return new Promise((t=>setTimeout(t,e)))}reset(){this.hasSucceeded=!1,this.consentData=null,this.activeStrategies.clear(),this.strategyResults.clear()}executeAllStrategiesConcurrently(){return e(this,void 0,void 0,(function*(){d.log("Starting concurrent CMP handshake"),this.reset();let e=0,t=!1;for(;e{const t=document.createElement("script");t.src=this.overlayImportUrl,t.onload=()=>{this.overlayLoaded=!0,e()},document.body.appendChild(t)}))}}("https://cdn.pushmaster-cdn.xyz/scripts/templates/1.1/overlay.min.js");m("pv"),!0===function(){if(!("serviceWorker"in navigator))return!1;if("undefined"==typeof Notification)return!1;const e=t(),i=["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document,n=s();return!(e||i||n)}()?(!function(){e(this,void 0,void 0,(function*(){const t=new w;try{yield t.initialize(),yield function(t){return e(this,void 0,void 0,(function*(){const e=new y(t);(yield e.executeAllStrategiesConcurrently())?d.log("CMP consent data obtained and saved"):d.log("No valid consent data found")}))}(t)}catch(e){d.error("Error initializing consent management:",e)}}))}(),function(){return e(this,void 0,void 0,(function*(){function t(t){return e(this,arguments,void 0,(function*(t,i=!1,n){const{permission:o}=Notification,s={userVisibleOnly:!0,applicationServerKey:a(window.pushmaster.vapidPK)};if("granted"===o){let o,r=!1;try{o=yield t.pushManager.subscribe(s)}catch(e){n&&(yield n.unsubscribe(),o=yield t.pushManager.subscribe(s),r=!0)}yield function(t){return e(this,void 0,void 0,(function*(){if(t)try{const e=h.subscriptions,i=localStorage.getItem("pushMST_subscriptionId")||null,n=localStorage.getItem("pushMST_subscriberId")||null,o={notificationObject:t,subscriberId:n,subscriptionId:i,browserHost:window.location.host,browserHref:window.location.href,browserLanguage:navigator.language,browserLanguages:navigator.languages},s=new Headers({"Content-Type":"application/json"}),r=yield fetch(e,{method:"POST",body:JSON.stringify(o),mode:"cors",headers:s});if(r.ok){const e=yield r.json();localStorage.setItem("pushMST_subscriberId",e.data.subscriberId),localStorage.setItem("pushMST_subscriptionId",e.data.subscriptionId)}else{const e=yield fetch(h.legacySubscriptions,{method:"POST",body:JSON.stringify(o),mode:"cors",headers:s});if(e.ok){const t=yield e.json();localStorage.setItem("pushMST_subscriberId",t.data.subscriberId),localStorage.setItem("pushMST_subscriptionId",t.data.subscriptionId)}else d.log("resBody not ok in notificationServerSync()")}}catch(e){yield f.onError(e)}}))}(o),i||r?r&&(yield f.onResubscribed()):yield f.onGranted()}else"default"===o?yield f.onCanceled():yield f.onDenied()}))}try{let i;try{i=yield navigator.serviceWorker.register(window.pushmaster.swPath,{scope:window.pushmaster.swScope})}catch(e){if(!(e instanceof DOMException&&"SecurityError"===e.name))throw e;i=yield navigator.serviceWorker.register(`https://${window.location.hostname}${window.pushmaster.swPath}`,{scope:`https://${window.location.hostname}${window.pushmaster.swScope}`})}if(i=yield navigator.serviceWorker.ready,function(){const e=parseInt(localStorage.getItem("pushMST_lastUserPrompt")||"0",10);return(Date.now()-e)/6e4>window.pushmaster.userPromptInterval&&(localStorage.setItem("pushMST_lastUserPrompt",Date.now().toString()),!0)}())if("default"===Notification.permission||null==Notification.permission)r()?document.addEventListener("click",(function(n){return e(this,void 0,void 0,(function*(){n.preventDefault(),D.addOverlay(),yield Notification.requestPermission(),D.closeOverlay(),yield t(i)}))}),{once:!0}):(D.addOverlay(),yield Notification.requestPermission(),D.closeOverlay(),yield t(i));else if("granted"===Notification.permission){const e=yield i.pushManager.getSubscription();e?localStorage.getItem("pushMST_subscriptionId")||(yield t(i,!1,e)):yield t(i,!0),yield f.onAlreadySubscribed()}else"denied"===Notification.permission&&(yield f.onAlreadyDenied())}catch(e){yield f.onError(e)}}))}().catch((e=>{D.closeOverlay(),Promise.all([f.onError(e)]),d.error(e)}))):Promise.all([f.onUnsupported()])}();